package ua.com.jpy.entity.shopmaker;

import java.util.List;
import java.util.Map;

import javax.validation.Valid;

import org.bson.types.ObjectId;
import org.codehaus.jackson.map.annotate.JsonSerialize;
import org.hibernate.validator.constraints.NotBlank;

import ua.com.jpy.entity.AEntity;
import ua.com.jpy.entity.IEntity;

import com.google.code.morphia.annotations.Entity;

/**
 * @author LSD25
 *
 */
@Entity(noClassnameStored = true)
@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
public class Shopmaker extends AEntity implements IEntity {

	@NotBlank
	@Valid
	private String familyName;
	
	@NotBlank
	@Valid
	private String adminPassword;
	
	private Map<ObjectId, Integer> products;
	
	private Map<ObjectId, Integer> auctionProducts;
	
	@NotBlank
	private List<String> addressShipment;
	
	private int countSell;
	
	private List<ObjectId> bannersId;
	
	public String getFamilyName() {
		return familyName;
	}

	public void setFamilyName(String familyName) {
		this.familyName = familyName;
	}

	public String getAdminPassword() {
		return adminPassword;
	}

	public void setAdminPassword(String adminPassword) {
		this.adminPassword = adminPassword;
	}

	public Map<ObjectId, Integer> getProducts() {
		return products;
	}

	public void setProducts(Map<ObjectId, Integer> products) {
		this.products = products;
	}

	public Map<ObjectId, Integer> getAuctionProducts() {
		return auctionProducts;
	}

	public void setAuctionProducts(Map<ObjectId, Integer> auctionProducts) {
		this.auctionProducts = auctionProducts;
	}

	public List<String> getAddressShipment() {
		return addressShipment;
	}

	public void setAddressShipment(List<String> addressShipment) {
		this.addressShipment = addressShipment;
	}

	public int getCountSell() {
		return countSell;
	}

	public void setCountSell(int countSell) {
		this.countSell = countSell;
	}

	public List<ObjectId> getBannersId() {
		return bannersId;
	}

	public void setBannersId(List<ObjectId> bannersId) {
		this.bannersId = bannersId;
	}
	
}
